home *** CD-ROM | disk | FTP | other *** search
/ Speccy ClassiX 1998 / Speccy ClassiX 98.iso / amiga_system / the_aminet / dev / basic / gtboxconv.lha / gtboxconv / example / GTBoxConv.c < prev    next >
C/C++ Source or Header  |  1995-01-06  |  7KB  |  207 lines

  1. /*
  2.  *  Source machine generated by GadToolsBox V2.0b
  3.  *  which is (c) Copyright 1991-1993 Jaba Development
  4.  *
  5.  *  GUI Designed by : -- Unnamed --
  6.  */
  7.  
  8. #include <exec/types.h>
  9. #include <intuition/intuition.h>
  10. #include <intuition/classes.h>
  11. #include <intuition/classusr.h>
  12. #include <intuition/imageclass.h>
  13. #include <intuition/gadgetclass.h>
  14. #include <libraries/gadtools.h>
  15. #include <graphics/displayinfo.h>
  16. #include <graphics/gfxbase.h>
  17. #include <clib/exec_protos.h>
  18. #include <clib/intuition_protos.h>
  19. #include <clib/gadtools_protos.h>
  20. #include <clib/graphics_protos.h>
  21. #include <clib/utility_protos.h>
  22. #include <string.h>
  23.  
  24. #include "GTBoxConv.h"
  25.  
  26. struct Screen         *Scr = NULL;
  27. UBYTE                 *PubScreenName = NULL;
  28. APTR                   VisualInfo = NULL;
  29. struct Window         *Project0Wnd = NULL;
  30. struct Gadget         *Project0GList = NULL;
  31. struct Gadget         *Project0Gadgets[13];
  32. UWORD                  Project0Left = 128;
  33. UWORD                  Project0Top = 24;
  34. UWORD                  Project0Width = 410;
  35. UWORD                  Project0Height = 179;
  36. UBYTE                 *Project0Wdt = (UBYTE *)"GTBox Converter V - By Fabio Rotondo.";
  37.  
  38. struct TextAttr topaz8 = {
  39.     ( STRPTR )"topaz.font", 8, 0x00, 0x01 };
  40.  
  41. struct IntuiText Project0IText[] = {
  42.     2, 0, JAM1,63, 11, &topaz8, (UBYTE *)"Actions", &Project0IText[1],
  43.     2, 0, JAM1,256, 11, &topaz8, (UBYTE *)"Options", &Project0IText[2],
  44.     2, 0, JAM1,138, 146, &topaz8, (UBYTE *)"MAX POSSIBLE VALUES", NULL };
  45.  
  46. UWORD Project0GTypes[] = {
  47.     BUTTON_KIND,
  48.     BUTTON_KIND,
  49.     BUTTON_KIND,
  50.     CHECKBOX_KIND,
  51.     CHECKBOX_KIND,
  52.     CHECKBOX_KIND,
  53.     TEXT_KIND,
  54.     CHECKBOX_KIND,
  55.     INTEGER_KIND,
  56.     INTEGER_KIND,
  57.     INTEGER_KIND,
  58.     INTEGER_KIND,
  59.     INTEGER_KIND
  60. };
  61.  
  62. struct NewGadget Project0NGad[] = {
  63.     29, 26, 123, 17, (UBYTE *)"Convert", NULL, GD_CONVERT, PLACETEXT_IN, NULL, NULL,
  64.     26, 92, 126, 14, (UBYTE *)"QUIT", NULL, GD_QUIT, PLACETEXT_IN, NULL, NULL,
  65.     29, 48, 122, 17, (UBYTE *)"About", NULL, GD_ABOUT, PLACETEXT_IN, NULL, NULL,
  66.     349, 25, 26, 11, (UBYTE *)"Add Comments", NULL, GD_Add_Comments, PLACETEXT_LEFT, NULL, NULL,
  67.     349, 37, 26, 11, (UBYTE *)"Add Gad Handler", NULL, GD_Add_Gad_Handler, PLACETEXT_LEFT, NULL, NULL,
  68.     349, 49, 26, 11, (UBYTE *)"Show Operations", NULL, GD_Show_Ops, PLACETEXT_LEFT, NULL, NULL,
  69.     127, 121, 256, 12, (UBYTE *)"Operations:", NULL, GD_Operations, PLACETEXT_LEFT, NULL, NULL,
  70.     349, 61, 26, 11, (UBYTE *)"Gads And Bevels Only", NULL, GD_Gads_And_Bevs, PLACETEXT_LEFT, NULL, NULL,
  71.     332, 76, 43, 13, (UBYTE *)"Window Number", NULL, GD_WinNumber, PLACETEXT_LEFT, NULL, NULL,
  72.     332, 92, 43, 13, (UBYTE *)"GTList Number", NULL, GD_GTListNumber, PLACETEXT_LEFT, NULL, NULL,
  73.     339, 160, 47, 13, (UBYTE *)"Menu", NULL, GD_MenuMax, PLACETEXT_LEFT, NULL, NULL,
  74.     197, 160, 47, 13, (UBYTE *)"Text", NULL, GD_TextMax, PLACETEXT_LEFT, NULL, NULL,
  75.     70, 160, 47, 13, (UBYTE *)"Bevels", NULL, GD_BevelMax, PLACETEXT_LEFT, NULL, NULL
  76. };
  77.  
  78. ULONG Project0GTags[] = {
  79.     (TAG_DONE),
  80.     (TAG_DONE),
  81.     (TAG_DONE),
  82.     (TAG_DONE),
  83.     (TAG_DONE),
  84.     (TAG_DONE),
  85.     (GTTX_Border), TRUE, (TAG_DONE),
  86.     (TAG_DONE),
  87.     (GTIN_Number), 0, (GTIN_MaxChars), 2, (TAG_DONE),
  88.     (GTIN_Number), 0, (GTIN_MaxChars), 2, (TAG_DONE),
  89.     (GTIN_Number), 50, (GTIN_MaxChars), 4, (TAG_DONE),
  90.     (GTIN_Number), 30, (GTIN_MaxChars), 4, (TAG_DONE),
  91.     (GTIN_Number), 30, (GTIN_MaxChars), 4, (TAG_DONE)
  92. };
  93.  
  94. int SetupScreen( void )
  95. {
  96.     if ( ! ( Scr = LockPubScreen( PubScreenName )))
  97.         return( 1L );
  98.  
  99.     if ( ! ( VisualInfo = GetVisualInfo( Scr, TAG_DONE )))
  100.         return( 2L );
  101.  
  102.     return( 0L );
  103. }
  104.  
  105. void CloseDownScreen( void )
  106. {
  107.     if ( VisualInfo ) {
  108.         FreeVisualInfo( VisualInfo );
  109.         VisualInfo = NULL;
  110.     }
  111.  
  112.     if ( Scr        ) {
  113.         UnlockPubScreen( NULL, Scr );
  114.         Scr = NULL;
  115.     }
  116. }
  117.  
  118. void Project0Render( void )
  119. {
  120.     UWORD        offx, offy;
  121.  
  122.     offx = Project0Wnd->BorderLeft;
  123.     offy = Project0Wnd->BorderTop;
  124.  
  125.  
  126.     DrawBevelBox( Project0Wnd->RPort, offx + 19, offy + 8, 139, 14, GT_VisualInfo, VisualInfo, TAG_DONE );
  127.     DrawBevelBox( Project0Wnd->RPort, offx + 19, offy + 89, 139, 20, GT_VisualInfo, VisualInfo, TAG_DONE );
  128.     DrawBevelBox( Project0Wnd->RPort, offx + 23, offy + 91, 131, 16, GT_VisualInfo, VisualInfo, GTBB_Recessed, TRUE, TAG_DONE );
  129.     DrawBevelBox( Project0Wnd->RPort, offx + 177, offy + 8, 207, 14, GT_VisualInfo, VisualInfo, TAG_DONE );
  130.     DrawBevelBox( Project0Wnd->RPort, offx + 19, offy + 23, 139, 45, GT_VisualInfo, VisualInfo, TAG_DONE );
  131.     DrawBevelBox( Project0Wnd->RPort, offx + 8, offy + 117, 386, 20, GT_VisualInfo, VisualInfo, TAG_DONE );
  132.     DrawBevelBox( Project0Wnd->RPort, offx + 12, offy + 119, 378, 16, GT_VisualInfo, VisualInfo, GTBB_Recessed, TRUE, TAG_DONE );
  133.     DrawBevelBox( Project0Wnd->RPort, offx + 0, offy + 140, 402, 37, GT_VisualInfo, VisualInfo, TAG_DONE );
  134.     DrawBevelBox( Project0Wnd->RPort, offx + 4, offy + 142, 394, 33, GT_VisualInfo, VisualInfo, GTBB_Recessed, TRUE, TAG_DONE );
  135.     DrawBevelBox( Project0Wnd->RPort, offx + 11, offy + 4, 156, 109, GT_VisualInfo, VisualInfo, TAG_DONE );
  136.     DrawBevelBox( Project0Wnd->RPort, offx + 15, offy + 6, 148, 105, GT_VisualInfo, VisualInfo, GTBB_Recessed, TRUE, TAG_DONE );
  137.     DrawBevelBox( Project0Wnd->RPort, offx + 177, offy + 23, 207, 86, GT_VisualInfo, VisualInfo, TAG_DONE );
  138.     DrawBevelBox( Project0Wnd->RPort, offx + 169, offy + 4, 222, 109, GT_VisualInfo, VisualInfo, TAG_DONE );
  139.     DrawBevelBox( Project0Wnd->RPort, offx + 173, offy + 6, 214, 105, GT_VisualInfo, VisualInfo, GTBB_Recessed, TRUE, TAG_DONE );
  140.     DrawBevelBox( Project0Wnd->RPort, offx + 6, offy + 2, 389, 114, GT_VisualInfo, VisualInfo, TAG_DONE );
  141.     DrawBevelBox( Project0Wnd->RPort, offx + 1, offy + 0, 401, 140, GT_VisualInfo, VisualInfo, TAG_DONE );
  142.     PrintIText( Project0Wnd->RPort, Project0IText, offx, offy );
  143. }
  144.  
  145. int OpenProject0Window( void )
  146. {
  147.     struct NewGadget    ng;
  148.     struct Gadget    *g;
  149.     UWORD        lc, tc;
  150.     UWORD        offx = Scr->WBorLeft, offy = Scr->WBorTop + Scr->RastPort.TxHeight + 1;
  151.  
  152.     if ( ! ( g = CreateContext( &Project0GList )))
  153.         return( 1L );
  154.  
  155.     for( lc = 0, tc = 0; lc < Project0_CNT; lc++ ) {
  156.  
  157.         CopyMem((char * )&Project0NGad[ lc ], (char * )&ng, (long)sizeof( struct NewGadget ));
  158.  
  159.         ng.ng_VisualInfo = VisualInfo;
  160.         ng.ng_TextAttr   = &topaz8;
  161.         ng.ng_LeftEdge  += offx;
  162.         ng.ng_TopEdge   += offy;
  163.  
  164.         Project0Gadgets[ lc ] = g = CreateGadgetA((ULONG)Project0GTypes[ lc ], g, &ng, ( struct TagItem * )&Project0GTags[ tc ] );
  165.  
  166.         while( Project0GTags[ tc ] ) tc += 2;
  167.         tc++;
  168.  
  169.         if ( NOT g )
  170.             return( 2L );
  171.     }
  172.  
  173.     if ( ! ( Project0Wnd = OpenWindowTags( NULL,
  174.                 WA_Left,    Project0Left,
  175.                 WA_Top,        Project0Top,
  176.                 WA_Width,    Project0Width,
  177.                 WA_Height,    Project0Height + offy,
  178.                 WA_IDCMP,    BUTTONIDCMP|CHECKBOXIDCMP|TEXTIDCMP|INTEGERIDCMP|IDCMP_CLOSEWINDOW|IDCMP_REFRESHWINDOW,
  179.                 WA_Flags,    WFLG_DRAGBAR|WFLG_DEPTHGADGET|WFLG_CLOSEGADGET|WFLG_SMART_REFRESH|WFLG_ACTIVATE,
  180.                 WA_Gadgets,    Project0GList,
  181.                 WA_Title,    Project0Wdt,
  182.                 WA_ScreenTitle,    "GadToolsBox V2.0b ⌐ 1991-1993",
  183.                 WA_PubScreen,    Scr,
  184.                 TAG_DONE )))
  185.     return( 4L );
  186.  
  187.     GT_RefreshWindow( Project0Wnd, NULL );
  188.  
  189.     Project0Render();
  190.  
  191.     return( 0L );
  192. }
  193.  
  194. void CloseProject0Window( void )
  195. {
  196.     if ( Project0Wnd        ) {
  197.         CloseWindow( Project0Wnd );
  198.         Project0Wnd = NULL;
  199.     }
  200.  
  201.     if ( Project0GList      ) {
  202.         FreeGadgets( Project0GList );
  203.         Project0GList = NULL;
  204.     }
  205. }
  206.  
  207.